/*
 * program.h
 *
 *  Created on: 29.01.2012
 *      Author: ignacio
 */

#ifndef PROGRAM_H_
#define PROGRAM_H_

#include <vector>
#include "clanlib.h"


class Program
{
private:
	bool quit;
	// Window
	CL_DisplayWindowDescription window_desc;
	CL_DisplayWindow window;
	CL_Slot slot_quit;
	CL_GraphicContext gc;
	CL_InputDevice keyboard;
	CL_BlendMode blend_transparent;

public:
//	Program(void);
	Program(char* windowTitle="None", int width=512, int height=512);
	void init(void);
	void deinit(void);
	void run(void);
	void on_window_close() 	{quit = true;	}
};

class init // First thing to call to start the application
{
public:
	static int main(const std::vector<CL_String> &args);
};


#endif /* PROGRAM_H_ */
